Electronic device and control method

ABSTRACT

According to one embodiment, an electronic device includes a hardware processor. The processor receives voice data acquired by collecting speech of a user from a wearable device wearable by the user. The processor sends first mode information indicative of a first mode to one or more application programs being executed on the electronic device when the first mode is set as a recognition mode. A first recognition process to recognize one of first commands from the voice data is performed in the first mode. The processor sends second mode information indicative of a second mode to the one or more application programs when the second mode is set as the recognition mode. A second recognition process to recognize one of second commands from the voice data is repeatedly performed in the second mode.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is based upon and claims the benefit of priority from Japanese Patent Application No. 2018-176128, filed Sep. 20, 2018, the entire contents of which are incorporated herein by reference.

FIELD

Embodiments described herein relate generally to an electronic device and a control method.

BACKGROUND

Recently, an IoT (Internet of Things) age in which many things are connected through the Internet has come. A technique called “edge computing” is required as a tool for network communication and information sharing in offices, factories, and in other various situations. In order to realize the edge computing, development of a practical mobile edge computing device (MECD) having high degrees of versatility and processing capacity, and can be used by an operator (user) on site, is needed separately from a data center (or cloud). Thereby, it is expected that promotion of the operational efficiency and productivity improvement at a workplace and the like, or load dispersion of data and improvement in a network environment and the like, will be achieved.

Mobile devices such as MECD may be used with any wearable device such as an eyeglass-type equipment and a bracelet-type equipment. The mobile device and the wearable device exchange data, so that the mobile device can process data generated by, for example, a camera or sensor in the wearable device.

When a user performs a hands-free work while carrying a mobile device and wearing a wearable device such as an eyeglasses-type or bracelet-type wearable device, the mobile device and/or the wearable device may be operated using voice data of speech of the user collected by a microphone. Through the operation with voice, no input device such as a keyboard or a mouse connected to the mobile device is required. Thus, the user can work efficiently.

In a voice recognition device such as a smart speaker, a certain word (trigger word) that triggers a voice operation is recognized, and then one command is recognized, for example. That is, the voice recognition device allows a user to speak one command after speaking a trigger word. However, there is a case where a user wants to speak multiple commands continuously after speaking a trigger word.

BRIEF DESCRIPTION OF THE DRAWINGS

A general architecture that implements the various features of the embodiments will now be described with reference to the drawings. The drawings and the associated descriptions are provided to illustrate the embodiments and not to limit the scope of the invention.

FIG. 1 is a perspective view illustrating an example of the external appearance of an electronic apparatus (mobile PC) according to a first embodiment and a main body of a wearable device connected to the electronic apparatus.

FIG. 2 illustrates the external appearance of a front surface, side surfaces, and an upper surface of the electronic apparatus of the first embodiment.

FIG. 3 is a block diagram illustrating an example of the system configuration of the electronic apparatus of the first embodiment.

FIG. 4 is a perspective view illustrating an example of the external appearance of the wearable device of FIG. 1.

FIG. 5 is a perspective view illustrating an example of the external appearance of the main body of the wearable device of FIG. 1.

FIG. 6 is a block diagram illustrating an example of the system configuration of the main body of the wearable device of FIG. 1.

FIG. 7 is a block diagram illustrating an example of the functional configurations of a voice control program and a host application program that are executed by the electronic device of the first embodiment.

FIG. 8 illustrates an example of transition of a voice recognition mode in the electronic device of the first embodiment.

FIG. 9 illustrates a configuration example of trigger mode dictionary data used in the electronic device of the first embodiment.

FIG. 10 illustrates a configuration example of single-mode dictionary data used in the electronic device of the first embodiment.

FIG. 11 illustrates a configuration example of multi-mode dictionary data used in the electronic device of the first embodiment.

FIG. 12 illustrates an example of a screen image displayed on a display of the wearable device of FIG. 1.

FIG. 13 illustrates an example of a screen image that is displayed on the display of the wearable device of FIG. 1 and includes information indicative of a single-mode.

FIG. 14 illustrates an example of a screen image that is displayed on the display of the wearable device of FIG. 1 and includes information indicative of a multi-mode.

FIG. 15 is a flowchart of an example of the procedure of a voice control process executed by the electronic device of the first embodiment.

FIG. 16 is a flowchart of an example of the procedure of a trigger mode recognition process executed by the electronic device of the first embodiment.

FIG. 17 is a flowchart of an example of the procedure of a single-mode recognition process executed by the electronic device of the first embodiment.

FIG. 18 is a flowchart of an example of the procedure of a multi-mode recognition process executed by the electronic device of the first embodiment.

FIG. 19 is a flowchart of an example of the procedure of a host control process executed by the electronic device of the first embodiment.

FIG. 20 illustrates an example of transition of a voice recognition mode in an electronic device according to a second embodiment.

FIG. 21 illustrates a configuration example of trigger mode dictionary data used in the electronic device of the second embodiment.

FIG. 22 illustrates a configuration example of single-mode dictionary data used in the electronic device of the second embodiment.

FIG. 23 illustrates a configuration example of multi-mode dictionary data used in the electronic device of the second embodiment.

FIG. 24 is a flowchart of an example of the procedure of a voice control process executed by the electronic device of the second embodiment.

FIG. 25 is a block diagram illustrating an example of the functional configurations of a voice control program and host application programs that are executed by an electronic device according to a third embodiment.

FIG. 26 is a block diagram illustrating an example of the functional configurations of a voice control program and host application programs that are executed by an electronic device according to a fourth embodiment.

DETAILED DESCRIPTION

Various embodiments will be described hereinafter with reference to the accompanying drawings.

In general, according to one embodiment, an electronic device includes a transceiver and a hardware processor. The transceiver establishes a wired connection or a wireless connection between the electronic device and a wearable device wearable by a user. The hardware processor receives voice data acquired by collecting speech of the user from the wearable device. The processor sends first mode information indicative of a first mode to one or more application programs being executed on the electronic device when the first mode is set as a voice recognition mode. A first recognition process to recognize one of first commands from the voice data is performed in the first mode. The hardware processor sends second mode information indicative of a second mode to the one or more application programs when the second mode is set as the voice recognition mode. A second recognition process to recognize one of second commands from the voice data is repeatedly performed in the second mode.

Note that the disclosure is merely an example, and the invention is not limited by the content described in the following embodiments. Naturally, the modifications easily conceivable by those skilled in the art are included in the scope of the disclosure. In order to make the description clearer, there are cases where the size, shape, etc., of each part in the drawings are schematically represented by changing them relative to the actual embodiment. In multiple drawings, corresponding elements are denoted by the same reference numerals, and a detailed explanation may be omitted.

First Embodiment

[Control System]

Firstly, with reference to FIG. 1, an example of the configuration of a control system 1 that includes an electronic device according to a first embodiment will be described. This electronic device is a portable wireless device that may be implemented as a mobile personal computer (PC) including a mobile edge computing device (MECD), or a mobile information terminal such as a smartphone, a mobile phone, a PDA, and the like. Hereinafter, a case where this electronic device is realized as a mobile PC 2 will be exemplified.

The control system 1 includes the mobile PC 2 and a wearable device 3. A user carries the mobile PC 2 and wears the wearable device 3. The wearable device 3 is wearable on the body (for example, the arm, the neck, the head, etc.) of the user. As the wearable device 3, a wearable device of a glass-type, a bracelet-type, a wristwatch-type, a headphone-type, or the like may be used. In the following, a case where the wearable device 3 is a glass-type wearable device will be exemplified.

The wearable device 3 includes an eyeglass frame 142 and a wearable device main body 4. The eyeglass frame 142 may have a shape obtained by removing a lens from general eyeglasses, and is mounted on the face of the user (also referred to as operator). The eyeglass frame 142 may have a structure to which eyeglasses are attached. In a case where the operator regularly uses eyeglasses, lenses having the same power as those of regularly used eyeglasses may be attached to the eyeglass frame 142.

The wearable device main body 4 is composed of a side part 241 to be along the temple of the eyeglass frame 142, and a front part 242 to be positioned on the line of sight of one eye of the operator. The angle that the front part 242 forms with the side part 241 is adjustable.

The mobile PC 2 and the wearable device 3 establish a wired connection and/or a wireless connection to communicate. In the example shown in FIG. 1, a cable 146 connects the mobile PC 2 and the wearable device 3. This cable 146 is, for example, a cable that conforms to USB type-C (registered trademark) standard. The mobile PC 2 may communicate with the wearable device 3 by various wireless communication methods such as wireless LAN or Bluetooth (registered trademark).

As shown in FIG. 1, at the rear end of the side part 241 of the wearable device main body 4, a USB Type-C standard receptacle 132 to which a plug 146A at one end of the cable 146 is to be inserted is provided. A plug 146B at the other end of the cable 146 is inserted into a receptacle 207 that conforms to USE Type-C standard and is provided on the upper end face of the mobile PC 2. As described above, the wearable device main body 4 is connected to the mobile PC 2 through the USB type-C cable 146, and various signals are exchanged between the wearable device main body 4 and the mobile PC 2. The plugs and the receptacles may be replaced with each other in accordance with the design or the like, and they may be referred to as connectors. The wearable device main body 4 may also be connected to the mobile PC 2 by means of wireless communication such as a wireless LAN, Bluetooth, and the like.

In the embodiment, the wearable device main body 4 does not include a battery or DC terminal serving as a drive power supply, and the drive power is supplied from the mobile PC 2 to the wearable device main body 4 through the USB type-C cable 146. However, the wearable device main body 24 may also include a drive power supply.

[Mobile PC 2]

FIG. 2 shows an example of the external appearance of the mobile PC 2. The mobile PC 2 is a small-sized PC that can be held by one hand, and has a small size and is lightweight, e.g., the width thereof is about 10 cm or less, the height thereof is about 18 cm or less, the thickness thereof is about 2 cm, and the weight thereof is about 300 g. Accordingly, the mobile PC 2 can be held in a pocket of a work clothing of the operator, a holster to be attached to a belt, or a shoulder case, and is wearable. Although the mobile PC 2 includes a semiconductor chip such as a CPU, a semiconductor memory, and the like, and a storage device such as a Solid State Disk (SSD), and the like, the mobile PC 2 does not include a display device and a hardware keyboard for input of characters.

On the front surface of the mobile PC 2, cursor buttons 202 composed of an up button 202 a, a right button 202 b, a down button 202 c, a left button 202 d, and a decision button 202 e (also called a center button or an enter button) are arranged, and a fingerprint sensor 204 is arranged below the cursor buttons 202. Since the mobile PC 2 does not include a hardware keyboard for input of characters, a password number (also called a PIN) cannot be input with the hardware keyboard. Therefore, the fingerprint sensor 204 is used for user authentication at the time of login of the mobile PC 2. Each of the cursor buttons 202A may be used for inputting a command to instruct the mobile PC 2 to perform a corresponding process.

Operation methods of the cursor buttons 202 are determined by programs.

For example,

-   -   when the decision button 202 e is pressed once, item         selection/item execution is carried out,     -   when the decision button 202 e is pressed for a long time,         ending or cancellation of an operation is carried out,     -   when the up button 202 a is pressed once, a cursor is moved         upward,     -   when the up button 202 a is pressed for a long time, a list of         application programs being executed is displayed,     -   when the down button 202 c is pressed once, the cursor is moved         downward,     -   when the down button 202 c is pressed for a long time, a menu of         quick settings is displayed,     -   when the left button 202 d is pressed once, the right icon is         selected, and     -   when the right button 202 b is pressed once, the left icon is         selected.

On the upper side face of the mobile PC 2, a USB 3.0 receptacle 206, a USB type-C receptacle 207, and an audio jack 208 are provided.

On one side face (e.g., the side face on the left side when viewed from the front) of the mobile PC 2, a memory card slot 218 for a memory card is provided. The memory card includes, for example, an SD card, a micro SD card (registered trademark), and the like.

On the other side face (e.g., the side face on the right side when viewed from the front) of the mobile PC 2, a slot 210 for Kensington Lock (registered trademark), a power switch 212, a power LED 213, a DC IN/battery LED 214, a DC terminal 216, and ventilation holes 222 for cooling are provided. The power LED 213 is arranged around the power switch 212, and is turned on while the mobile PC 2 is being powered on. The DC IN/battery LED 214 indicates the state of the mobile PC 2 such as whether the battery is being charged, and the remaining battery level. Although power from the battery may drive the mobile PC 2, power from the AC adaptor, which is connected to the DC terminal 216, may also drive the mobile PC 2. Although not shown, the back side of the mobile PC 2 is configured such that the battery can be replaced with a new one by a one-touch operation.

FIG. 3 shows an example of the system configuration of the mobile PC 2. The mobile PC 2 includes a system controller 302. The system controller 302 includes a processor (CPU) and a controller hub. A main memory 308, a BIOS-ROM 310, the power LED 213, the DC IN/battery 214, and a USB controller 322 are connected to the processor. A flash memory 326, a memory card controller 328, a storage device 330 including an HDD or an SSD, a USB switch 324, an audio codec 334, a 3G/LTE/GPS device 336, the finger print sensor 204, a USB 3.0 receptacle 206, a Bluetooth/wireless LAN device 340, and an EC/KBC 344 are connected to the controller hub.

The system controller 302 executes various programs loaded from the storage device 330 into the main memory 308. The system controller 302 controls the operation of each component in the mobile PC 2 by executing instructions in the programs.

The programs include an OS 308A, a voice control program 308B, and various application programs 308C. The voice control program 308B has a function to control the mobile PC 2 and the wearable device 3 with a command spoken by the user. Each command is a single word or a simple sentence and is defined by dictionaries used by the voice control program 308B.

The voice control program 308B supplies various commands spoken by the user to, for example, an active application program (also referred to as a host application program) 3080 that is currently being .executed on the mobile PC 2 and is operable by the user. That is, the voice control program 308B and the host application program 308C operate in cooperation.

The audio codec 334 converts a digital audio signal to be played into an analog audio signal and supplies the converted analog signal to the audio jack 208. Further, the audio codec 334 converts an analog audio signal input from the audio jack 208 into a digital audio signal.

The memory card controller 328 accesses a memory card (for example, an SD card) inserted into the memory card slot 218, and controls reading/writing of data from/to the memory card.

The USB controller 322 controls transmission and reception of data with respect to either a USB Type-C cable that includes a plug connected to the USB Type-C receptacle 207 or a USB 3.0 cable (not shown) that includes a plug connected to the USB 3.0 receptacle 206. A type of interface that is not provided in the mobile PC 2, such as USB, HDMI (registered trademark) and the like can be used by connecting a USB hub or a port extension adapter to the USB Type-C receptacle 207.

The Bluetooth/wireless LAN device 340 executes wireless communication conforming to the Bluetooth standard or wireless LAN communication conforming to IEEE802.11 standard for connection to an external device or a network. For the connection to the network, not only wireless communication but also wired LAN communication conforming to the IEEE802.3 standard may be used. The USB controller 322 or the Bluetooth/wireless LAN device 340 may function as a transceiver to establish a wired or wireless connection between the mobile PC 2 and the wearable device 3.

The fingerprint sensor 204 is used for fingerprint authentication at the time of boot of the mobile PC 2.

A sub-processor 346, the power switch 212 and the cursor buttons 202 are connected to the EC/KBC 344. The EC/KBC 344 has a function of turning on or turning off the power to the mobile PC 2 in response to the operation of the power switch 212. The control of power-on and power-off is executed by the cooperative operation of the EC/KBC 344 and power circuit 350. Even during a power-off period of the mobile PC 2, the EC/KBC 344 operates by the power from a battery 352 or an AC adaptor 358 connected as an external power supply. The power circuit 350 uses the power from the battery 352 or the AC adaptor 358 thereby to control power to be supplied to each component. The power circuit 350 includes a voltage regulator module 356. The voltage regulator module 356 is connected to a processor in the system controller 302.

Although the mobile PC 2 is constituted as a body separate from the wearable device main body 4, the mobile PC 2 may be incorporated into the wearable device main body 4, and both of them may also be integrated into one body.

[Wearable Device 3]

An example of the external appearance of the wearable device 3 connected to the mobile PC 2 will be explained with reference to FIGS. 4 and 5. As described above, the wearable device 3 includes the eyeglass frame 142 and the wearable device main body 4.

The eyeglass frame 142 is provided with mounting brackets 144 on both the right and left temples thereof. The wearable device main body 24 is attached to and detached from one of the mounting brackets 144 on the right and left temples. In FIG. 4, the mounting bracket 144 on the temple on the right side of the operator is hidden behind the wearable device main body 4, and hence is not shown. The wearable device main body 4 is provided with a display 124. The display 124 is configured in such a way as to be viewed by one eye of the operator. Therefore, the mounting brackets 144 are provided on both the right and left temples so that the wearable device main body 4 can be attached to the mounting bracket 144 on the dominant eye side.

The wearable device main body 4 needs not be detachably attached to the eyeglass frame 142 by means of the mounting bracket 144. The wearable device 3 for the right eye or the left eye in which the wearable device main body 4 is fixed to the right side or the left side of the eyeglass frame 142 may be prepared. Furthermore, the wearable device main body 4 may not be attached to the eyeglass frame 142, but may be attached to the head of the operator by using a helmet or goggle.

An engaging piece 128 shown in FIG. 5 of the wearable device main body 4 is forced between upper and lower frames of the mounting bracket 144, whereby the wearable device main body 4 is attached to the eyeglass frame 142. When the wearable device main body 4 is to be detached from the eyeglass frame 142, the engaging peace 128 is plucked out of the mounting bracket 144.

In a state where the wearable device main body 4 is attached to the mounting bracket 144, the engaging piece 128 is somewhat movable backward and forward in the mounting bracket 144. Accordingly, the wearable device main body 4 is adjustable in the front-back direction so that the operator's eye can be brought to a focus on the display 124.

Furthermore, the mounting bracket 144 is rotatable around an axis 144A perpendicular to the temple. After the wearable device main body 4 is attached to the eyeglass frame 142, the wearable device main body 4 is adjustable in the vertical direction so that the display 124 can be positioned on the operator's line of sight. Moreover, the rotational angle of the mounting bracket 144 is about 90 degrees and, by largely rotating the mounting bracket 144 in the upward direction, the wearable device main body 4 can be flipped up from the eyeglass frame 142. Thereby, even when it is difficult to watch the real thing because the field of view is obstructed by the wearable device main body 4 or even when the wearable device main body 4 interferes with surrounding objects in a small space, it is possible to temporarily divert/restore the wearable device main body 4 from/to the field of view of the operator without detaching/reattaching the entire wearable device 3 from/to the face of the operator.

[Wearable Device Main Body 4]

As described above, the wearable device main body 4 is constituted of the side part 241 to be along the temple of the eyeglass frame 142, and the front part 242 to be positioned on the line of sight of one eye of the operator. The angle which the front part 242 forms with the side part 241 is adjustable.

As shown in FIG. 4, on the outside surface of the front part 242, a camera 116, a light 118, and a camera LED 120 are provided. The light 118 is an auxiliary lighting fixture emitting light at the time of shooting a dark object. The camera LED 120 is configured to be turned on at the time of shooting a photograph or video to thereby cause the objective person to be photographed to recognize that he or she is to be photographed.

On the top surface of the side part 241 of the wearable device main body 4 attached to the right side temple, first, second, and third buttons 102, 104, and 106 are provided. When the dominant eye of the operator is the left eye, the wearable device main body 4 is attached to the left side temple. The top and the bottom of the wearable device main body 4 are reversed according to whether the wearable device main body 4 is attached to the right side temple or to the left side temple. Therefore, the first, second, and third buttons 102, 104, and 106 may be provided on both the top surface and undersurface of the side part 241.

On the outside surface of the side part 241, a touchpad 110, a fourth button 108, a microphone 112, and an illuminance sensor 114 are provided. The touchpad 110 and the fourth button 108 can be operated with a forefinger. When the wearable device main body 4 is attached to the right side temple, the buttons 102, 104, and 106 are arranged at positions at which the buttons 102, 104, and 106 can be operated with a forefinger, a middle finger, and a third finger, respectively.

The touchpad 110 is configured such that the movement of a finger in up and down directions or back and forth directions on the surface on the touchpad 110 as indicated by arrows can be detected. The movement to be detected includes flicking of a finger for grazing the surface quickly with the finger in addition to dragging of a finger for moving the finger kept in contact with the surface. Upon detection of up-and-down or back-and-force movement of the operator's finger, the touchpad 110 inputs a command to execute a particular process.

Operation methods of the first to fourth buttons 102, 104, 106, and 108, and the touchpad 110 are determined in advance by programs.

For example,

-   -   when the third button 106 is pressed once, item selection/item         execution is carried out (corresponding to pressing once of the         decision button 202 e in the mobile PC 2),     -   when the third button 106 is pressed for a long time, a list of         application programs being executed is displayed (corresponding         to pressing the up button 202 a for a long time in the mobile PC         2),     -   when the second button 104 is pressed once, the screen returns         to a home screen,     -   when the second button 104 is pressed for a long time, a menu of         quick settings is displayed (corresponding to pressing the down         button 202 c for a long time in the mobile PC 2), and     -   when the first button 102 is pressed once, cancelation of         operation (corresponding to pressing once of the decision button         202 e in the mobile PC 2 or operation identical to the operation         of the Esc key of keyboard) is executed.

With regard to the operation of the touchpad 110, for example,

-   -   when a vertical drag movement is detected, the cursor moves         vertically,     -   when a frontward flick movement is detected, the left icon is         selected (sequential scrolling) (corresponding to pressing once         of the right button 202 b in the mobile PC 2),     -   when a backward flick movement is detected, the right icon is         selected (sequential scrolling) (corresponding to pressing once         of the left button 202 d in the mobile PC 2),     -   when a frontward drag movement is detected, the left icon is         selected (scroll one item at a time) (corresponding to pressing         once of the right button 202 b in the mobile PC 2), and     -   when a backward drag movement is detected, the right icon is         selected (scroll one item at a time) (corresponding to pressing         once of the left button 202 d in the mobile PC 2).

The first button 102, second button 104, third button 106, and fourth button 108 are arranged to be operated by a forefinger, a middle finger, a third finger, and a little finger, respectively. The reason why the fourth button 108 is provided not on the top surface of the side part 241, but on the outside surface of the side part 241 is that there is space restriction. The fourth button 108 may also be provided on the top surface of the side part 241 in the same manner as the first to third buttons 102, 104, and 106.

The operations performed with the buttons 102, 104, 106, and 108 and touchpad 110 of the wearable device main body 4 can be performed similarly with the cursor buttons 202 provided with the mobile PC 2. Since operators cannot view the operation of the buttons 102, 104, 106, and 108 and the touchpad 110 of the wearable device main body 4, some of the operators may require a time to get used to perform intentional operation. Furthermore, the buttons 102, 104, 106, and 108 and the touchpad 110 are small and may be difficult to operate. In the present embodiment, the same operations can be performed with the cursor buttons 202 of the mobile PC 2, and thus, the above problems can be solved.

The illuminance sensor 114 detects the illuminance of the surrounding area in order to adjust the brightness of the display 124 automatically.

FIG. 5 shows an example of the external appearance of the back side of the wearable device main body 4. On the inner side of the front part 242, the display 124 that is realized as an LCD is provided. On the inner side of the side part 241, a microphone 126, a speaker 130, and the engaging piece 128 are provided. The microphone 126 is provided at the front position of the side part 241, and the speaker 130 and the engaging piece 128 are provided at the rear position of the side part 241. Headphones may be used in place of the speaker 130. In this case, the microphone and headphones may also be provided in an integrated manner as a headset.

FIG. 6 shows an example of the system configuration of the wearable device main body 4. The USB type-C receptacle 132 is connected to a mixer 166. The display controller 170 and the USB hub 164 are respectively connected to a first terminal and a second terminal of the mixer 166. The display 124 is connected to the display controller 170. The camera controller 168, an audio codec 172, and the sensor controller 162 are connected to the USB hub 164. The camera 116, the flashlight 118, and the camera LED 120 are connected to the camera controller 168. Audio signals from the microphones 112 and 126 are input to the audio codec 172, and audio signal from the audio codec 172 is input to the speaker 130 through an amplifier 174.

A motion sensor (for example, acceleration, geomagnetism, gravitation, gyroscopic sensor, etc.) 176, the illuminance sensor 114, a proximity sensor 178, the touchpad 110, the first to fourth buttons 102, 104, 106, and 108, and a GPS sensor 180 are connected to the sensor controller 162. The sensor controller 162 processes signals generated by the motion sensor 176, the illuminance sensor 114, the proximity sensor 178, the touchpad 110, the first to fourth buttons 102, 104, 106, and 108, and the GPS sensor 180, and supplies a command and data to the mobile PC 2. Although not shown in FIG. 5, the motion sensor 176 and the proximity sensor 178 are arranged inside the wearable device main body 4.

The motion sensor 176 detects movement, orientation, posture, and the like of the wearable device main body 4. The sensor controller 162 and the display controller 170 have an orientation auto-adjustment function to automatically adjust the orientation of the screen image displayed on the display 124 based on the movement, the orientation, the posture, and the like detected by the motion sensor 176.

The proximity sensor 178 detects attachment of the wearable device 3 based on an approach of a face, a finger and the like of the operator thereto.

The sensor controller 162 and the display controller 170 have a brightness auto-adjustment function to automatically adjust the brightness of the display 124 based on the illuminance detected by the illuminance sensor 114. Furthermore, the sensor controller 162 and the camera controller 168 have an LED auto-adjustment function to automatically switch on/off of the flashlight 118 based on the illuminance detected by the illuminance sensor 114.

An audio recognition device such as a smart speaker recognizes, for example, a special word (that is, a trigger word) that triggers a voice operation, and then recognizes one voice command (instruction). That is, the audio recognition device allows a user to speak one voice command after speaking a trigger word. However, there is a case where a user wants to speak multiple voice commands continuously after speaking a trigger word.

When a GUI of the host application program 308C is operated with voice, many operations may be performed to the GUI continuously. For example, in order that a cursor is moved on an object (for example, a button) of a GUI in a screen, a voice operation for moving the cursor horizontally or vertically by a certain amount may be repeatedly performed. In such a situation, speaking a trigger word each time before a voice command is spoken for an operation is troublesome to the user. A new function to recognize multiple voice commands for multiple operations performed continuously is thus required.

Therefore, the present embodiment utilizes a single-mode in which only one voice command can be recognized after recognizing a trigger word, and a multi-mode in which multiple voice commands can be recognized continuously after recognizing a trigger word. A user can switch the voice recognition mode in accordance with one or more operations to be performed, and thus, the voice operation becomes more convenient. Furthermore, since dictionary data for each mode is selectively used, voice commands recognizable from voice data can be limited to commands to be recognized in each mode, and thus, misrecognition and delay in the process can be reduced.

FIG. 7 shows an example of the functional configurations of a voice control program 308B and a host application program 308C that are executed on the mobile PC 2. The voice control program 308B uses data of dictionaries 581, 582, and 583 of voice recognition modes stored in the dictionary storage area 58 to recognize contents of speech of a user from voice data. The dictionary storage area 58 is disposed in a nonvolatile memory such as the storage device 330.

The voice control program 308B and the host application program 308C operate in cooperation. The voice control program 308B sends information indicative of a result of voice recognition to the specific host application program 308C functioning in cooperation. In the following description, a case where the host application program 308C which operates with the voice control program 308B, has an image capture function using a camera 116, will be exemplified.

The voice control program 308B includes a voice reception module 51, a mode control module 54, a dictionary management module 55, and a notification control module 56.

The voice reception module 51 receives voice data, which is generated by collecting speech of a user, from the wearable device 3 via a cable 146 or the like, for example. The audio codec 172 may generate the voice data by performing an analogue-digital (AD) conversion on voice signals that are collected using microphones 112 and 126, and the like of the wearable device 3. Furthermore, the voice reception module 51 may receive the voice data by collecting voice signals using a microphone (which is not shown) connected to the audio jack 208 of the mobile PC 2 and by performing the AD conversion on the collected voice signals with the audio codec 334. The voice data is constantly received while the user uses the mobile PC 2 and the wearable device 3, for example. The voice data may be a voice file.

The mode control module 54 controls a voice recognition mode of the voice control program 308B (the mobile PC 2). The mode control module 54 sets one of a trigger mode, a signal-mode and a multi-mode as the voice recognition mode, based on a voice command recognized from the voice data.

In the trigger mode, a process to recognize one of one or more trigger commands (also referred to as trigger words) included in trigger mode dictionary data 581 associated with the trigger mode is performed. Each trigger command indicates, for example, a start of a voice operation. In the single-mode, a process to recognize one of voice commands included in single-mode dictionary data 582 associated with the single-mode is performed. In the multi-mode, a process to recognize one of voice commands included in multi-mode dictionary data 583 associated with the multi-mode may be repeatedly (continuously) performed.

Note that the voice control program 308B may further include a timer 53. The timer 53 detects a timeout of a mode set as the voice recognition mode. A time from the instant when a certain mode is set as the voice recognition mode to the instant when a timeout should be detected is set to the timer 53. For example, the timer 53 may detect a timeout when a threshold time (for example, ten seconds) passes after the single-mode is set as the voice recognition mode.

In response to the detection of the timeout, the voice recognition mode returns to an initial state. An initial state of the voice recognition mode is, for example, the trigger mode, or may be a mode different from the trigger mode.

FIG. 8 shows an example of controlling a transition of the voice recognition mode by the mode control module 54. In the initial state, the trigger mode M1 is set as the voice recognition mode, for example. The mode control module 54 switches the voice recognition mode in accordance with a type of a command recognized from voice data in the following manner.

(A1) The mode control module 54 switches from the trigger mode M1 currently set as the voice recognition mode to the single-mode M2 in response to recognition of a trigger command (that is, a voice command indicative of a start of a voice operation).

(A2) The mode control module 54 switches from the single-mode M2 currently set as the voice recognition mode to the multi-mode M3 in response to recognition of a voice command indicative of a start of a continuous voice operation.

(A3) The mode control module 54 switches from the single-mode M2 currently set as the voice recognition mode to the trigger mode M1 in response to recognition of a voice command that is different from the voice command indicative of the start of the continuous voice operation or in response to a timeout. The voice command that is different from the voice command indicative of the start of the continuous voice operation is a voice command to operate the host application program 308C (hereinafter, referred to as a host operation command).

(A4) The mode control module 54 switches from the multi-mode M3 currently set as the voice recognition mode to the trigger mode M1 in response to recognition of a voice command indicative of an end of the continuous voice operation.

(A5) The mode control module 54 keeps the multi-mode M3 currently set as the voice recognition mode while a voice command that is different from the voice command indicative of an end of the continuous voice operation is recognized. The voice command that is different from the voice command indicative of the end of the continuous voice operation is a voice command to operate the host application program 308C (that is, a host operation command).

As shown in FIG. 7, the notification control module 56 sends (notifies) mode information indicative of a voice recognition mode currently being set (that is, status of voice recognition) to the host application program 308C. The notification control module 56 sends mode information to the host application program 308C when the mode control module 54 has switched the voice recognition mode, for example.

Specifically, the notification control module 56 sends information indicative of the single-mode M2 to the host application program 308C when the voice recognition mode has been switched from the trigger mode M1 to the single-mode M2. The notification control module 56 sends information indicative of the multi-mode M3 to the host application program 308C when the voice recognition mode has been switched from the single-mode M2 to the multi-mode M3. The notification control module 56 sends information indicative of the trigger mode M1 to the host application program 308C when the voice recognition mode has been switched from the single-mode M2 to the trigger mode M1. The notification control module 56 sends information indicative of the trigger mode M1 to the host application program 308C when the voice recognition mode has been switched from the multi-mode M3 to the trigger mode M1.

Note that the notification control module 56 sends information indicative of modes before and after the switching to the host application program 308C. Furthermore, the notification control module 56 may send mode information to the host application program 308C when the host application program 308C requests the notification control module 56 to send the mode information.

The dictionary management module 55 reads dictionary data associated with the set voice recognition mode from the dictionary storage area 58, and supplies the read dictionary data to the voice recognition module 52. That is, when the trigger mode M1 is set as the voice recognition mode, the dictionary management module 55 reads the trigger mode dictionary data 581 from the dictionary storage area 58 and supplies the data 581 to the voice recognition module 52. When the single-mode M2 is set as the voice recognition mode, the dictionary management module 55 reads the single-mode dictionary data 582 from the dictionary storage area 58 and supplies the data 582 to the voice recognition module 52. When the multi-mode M3 is set as the voice recognition mode, the dictionary management module 55 reads the multi-mode dictionary data 583 from the dictionary storage area 58 and supplies the data 583 to the voice recognition module 52.

The trigger mode dictionary data 581 is dictionary data for voice recognition of one or more trigger commands that are used in the trigger mode M1. The single-mode dictionary data 582 is dictionary data for voice recognition of voice commands that are used in the single-mode M2. The multi-mode dictionary data 583 is dictionary data for voice recognition of voice commands that are used in the multi-mode M3.

The voice recognition module 52 performs a voice recognition process on voice data in the voice recognition mode set by the mode control module 54 using one of the dictionary data 581, 582, and 583 supplied by the dictionary management module 55. The voice recognition process includes acoustic analysis for the voice data, feature extraction, and matching to the dictionary data 581, 582, or 583. By performing the voice recognition process on the voice data, a command included in the voice data is obtained. The voice recognition module 52 may perform the voice recognition process in real time on the voice data constantly received by the voice reception module 51.

The voice recognition module 52 calculates features by analyzing the voice data, and when the calculated features include a feature corresponding to a command, determines that the command is recognized from the voice data, for example. Alternatively, the voice recognition module 52 uses phoneme dictionary data (not shown) including a feature of phoneme of each character to determine whether the feature in the phoneme dictionary data matches a feature of voice pattern in a certain period in the voice data, and determines a character (phoneme) corresponding to the voice pattern in the period. Characters corresponding to a voice pattern in each period in the voice data are determined in order, and when a character string composed of the determined characters matches a character string indicative of a word of a certain command, the voice recognition module 52 may determine that the command is recognized from the voice data.

When the trigger mode M1 is set as the voice recognition mode, the voice recognition module 52 performs a process to recognize one of one or more trigger commands indicated in the trigger mode dictionary data 581 from the voice data.

When the single-mode M2 is set as the voice recognition mode, the voice recognition module 52 performs a process to recognize one of voice commands indicated in the single-mode dictionary data 582 from the voice data. That is, while the single-mode M2 is set as the voice recognition mode, the voice recognition module 52 recognizes one voice command alone.

When a voice command, which is included in the voice commands indicated in the single-mode dictionary data 582 and is different from a voice command indicative of a start of a continuous voice operation, is recognized, that is, when a host operation command of the voice commands is recognized, the notification control module 56 sends command information to the host application program 308C. The command information indicates the recognized voice command. The host application program 308C operates in accordance with the command information.

Furthermore, when the multi-mode M3 is set as the voice recognition mode, the voice recognition module 52 may repeatedly perform a process to recognize one of the voice commands indicated in the multi-mode dictionary data 583 from the voice data. That is, while the multi-mode M3 is set as the voice recognition mode, the voice recognition module 52 may recognize multiple voice commands continuously. The multiple voice commands may include the same voice commands (for example, voice commands each indicative of “press shutter release button”) or may include different voice commands.

When a voice command, which is included in the voice commands indicated in the multi-mode dictionary data 583 and is different from a voice command indicative of an end of a continuous voice operation, is recognized, that is, when a host operation command of the voice commands is recognized, the notification control module 56 sends command information to the host application program 308C. The command information indicates the recognized voice command. The host application program 308C operates in accordance with the command information.

The notification control module 56 establishes a connection for inter-process communication with the host application program 308C and sends (notifies) mode information and command information to the host application program 308C using the inter-process communication. The method to send the mode information and the command information to the host application program 308C is not limited to the inter-process communication, and may be a method to issue a key code corresponding to the voice recognition mode or a method to issue a key code corresponding to a recognized voice command, for example. The operation of the host application program 308C is controlled based on the issued key code.

The configuration of each of the dictionary data 581, 582, and 583 will be explained with reference to FIGS. 9 to 11.

FIG. 9 shows a configuration example of the trigger mode dictionary data 581. The trigger mode dictionary data 581 includes one or more records corresponding to one or more trigger commands used in the trigger mode M1. Each record includes, for example, a trigger command ID field and a content field.

In a record corresponding to a trigger command, the trigger command ID field of the record indicates identification information of the trigger command. The content field of the record indicates a content to be spoken by a user for voice input of the trigger command.

The example of FIG. 9 shows a record 1-1 in which “trigger command 1” is set to the trigger command ID field and “start voice operation” is set to the content field. The trigger command 1 shown in the record 1-1 is used to start the single-mode M2 in which a process to recognize one of voice commands from voice data. Thus, a trigger command functions as a mode change command to change the voice recognition mode.

FIG. 10 shows a configuration example of the single-mode dictionary data 582. The single-mode dictionary data 582 includes records corresponding to voice commands used in the single-mode M2. Each record includes, for example, a command ID field and a content field.

In a record corresponding to a voice command, the command ID field of the record indicates identification information of the voice command. The content field of the record indicates a content to be spoken by a user to input the voice command.

The example of FIG. 10 shows four records including:

-   -   a record 2-1 that includes “command 1” set to the command ID         field and “press shutter release button” set to the content         field;     -   a record 2-2 that includes “command 2” set to the command ID         field and “zoom in” set to the content field;     -   a record 2-3 that includes “command 3” set to the command ID         field and “zoom out” set to the content field; and     -   a record 2-4 that includes “command 4” set to the command ID         field and “start continuous voice operation” set to the content         field.

The command 1 in the record 2-1 is used to command the host application program 308C to execute a process to generate a still image using the camera 116. The command 2 in the record 2-2 is used to command the host application program 308C to execute a process to make the camera 116 zoom in. The command 3 in the record 2-3 is used to command the host application program 308C to execute a process to make the camera 116 zoom out. The command 4 in the record 2-4 is used to start the multi-mode M3 in which a process to recognize one of the voice commands from voice data is performed repeatedly.

The commands 1, 2, and 3 in the records 2-1, 2-2, and 2-3 are host operation commands used for the operation of the host application program 308C. The host operation commands described above are merely examples, and various commands may be used as the host operation commands in accordance with functions of the host application program 308C.

On the other hand, the command 4 in the record 2-4 is a mode change command used for changing of the voice recognition mode. Note that each record may further include a type field that indicates whether the corresponding command is either a host operation command or a mode change command. For example, the mode control module 54 may control the transition of the voice recognition mode in accordance with the type of the recognized voice command.

FIG. 11 shows a configuration example of the multi-mode dictionary data 583. The multi-mode dictionary data 583 includes records corresponding to voice commands used in the multi-mode M3. Each record includes, for example, a command ID field and a content field.

In a record corresponding to a voice command, the command ID field of the record indicates identification information of the voice command. The content field of the record indicates a content to be spoken by a user to input the voice command.

The example of FIG. 11 shows four records including:

-   -   a record 3-1 that includes “command 1” set to the command ID         field and “press shutter release button” set to the content         field;     -   a record 3-2 that includes “command 2” set to the command ID         field and “zoom in” set to the content field;     -   a record 3-3 that includes “command 3” set to the command ID         field and “zoom out” set to the content field; and     -   a record 3-4 that includes “command 5” set to the command ID         field and “end continuous voice operation” set to the content         field.

The commands 1, 2, and 3 in the records 3-1, 3-2, and 3-3 are the same as the commands 1, 2, and 3 in the records 2-1, 2-2, and 2-3 of the single-mode dictionary data 582 explained above with reference to FIG. 10. Thus, the commands 1, 2, and 3 in the records 3-1, 3-2, and 3-3 are host operation commands.

The command 5 in the record 3-4 is a mode change command used to end the multi-mode M3 in which a process to recognize one of the voice commands from voice data is performed repeatedly. Note that each record may further include a type field that indicates whether the corresponding command is either a host operation command or a mode change command.

The trigger mode dictionary data 581 may be preliminarily defined, or may be created and/or updated (for example, changed, added, deleted, and the like). The trigger mode dictionary data 581 may be created or updated using a file (for example, a text file) received by the mobile PC 2 from an external device such as a server, or may be created or updated in accordance with an operation by a user using GUI of the host application program 308C or the like.

The dictionary storage area 58 may store a pair of the single-mode dictionary data 582 and the multi-mode dictionary data 583 that is associated with each of application programs executed on the mobile PC 2. In that case, the dictionary management module 55 detects an active application program that is currently operable by a user (that is, the host application program 308C). Then, when the single-mode M2 is set as the voice recognition mode, the dictionary management module 55 reads the single-mode dictionary data 582 associated with the active application program. In contrast, when the multi-mode M3 is set as the voice recognition mode, the dictionary management module 55 reads the multi-mode dictionary data 583 associated with the active application program.

The single-mode dictionary data 582 and the multi-mode dictionary data 583 may be preliminarily defined, or may be created and/or updated (for example, changed, added, deleted, or the like). The single-mode dictionary data 582 and the multi-mode dictionary data 583 may be created or updated using a file received by the mobile PC 2 from an external device such as a server, or may be created or updated in accordance with an operation by a user using GUI of the host application program 308C or the like.

Furthermore, the host application program 308C includes a control module 59. The control module 59 receives mode information and command information sent from the notification control module 56 of the voice control program 308B. The control module 59 controls the operation of the host application program 308C using at least one of the mode information and the command information received.

Specifically, when command information indicative of “press shutter release button” is received from the notification control module 56, the control module 59 executes a process to generate a still image using the camera 116. When command information indicative of “zoom in” is received from the notification control module 56, the control module 59 executes a process to make the camera 116 zoom in. Furthermore, when command information indicative of “zoom out” is received from the notification control module 56, the control module 59 executes a process to make the camera 116 zoom out.

When the single-mode M2 is set as the voice recognition mode, that is, when mode information indicative of the single-mode M2 is received from the notification control module 59, the control module 59 displays, for example, an object representing the single-mode M2 on a screen of the display 124 of the wearable device 3.

When the multi-mode M3 is set as the voice recognition mode, that is, when mode information indicative of the multi-mode M3 is received from the notification control module 56, the control module 59 notifies the user that the voice recognition mode is the multi-mode M3. The control module 59 displays, for example, an object representing the multi-mode M3 on the display 124. Upon seeing the object, the user recognizes the corresponding voice recognition mode, and thus, the object may be an indicator, a mark, or a text, for example.

Furthermore, when the trigger mode M1 is set as the voice recognition mode, that is, when the mode information indicative of the trigger mode M1 is received from the notification control module 56, the control module 59 notifies the user that the voice recognition mode is the trigger mode M1. The control module 59 deletes the object representing the single-mode M2 or the multi-mode M3 from the screen of the display 124, for example. Alternatively, the control module 59 may display an object representing the trigger mode M1 on the screen of the display 124 when the trigger mode M1 is set as the voice recognition mode.

An example where an object representing a voice recognition mode currently being set is displayed on the screen of the display 124 will be explained with reference to FIGS. 12 to 14. In this example, the host application program 308C has an image capture function using the camera 116.

FIG. 12 shows an example of a screen image 8-1 of the host application program 308C displayed on the display 124 when the trigger mode M1 is set as the voice recognition mode.

The screen image 8-1 includes a camera view area 611 and a command list area 612. The camera view area 612 displays an image photographed by the camera 116 in real time. The command list area 612 shows one or more voice commands that are available for the host application program 308C. In the command list area 62, a word to be spoken as a voice command and a behavior of the host application program 308C with regard to each of the voice commands are indicated.

As shown in FIG. 13, when the user speaks a trigger command and then the voice recognition mode transitions from the trigger mode M1 to the single-mode M2, a screen image 8-2 that includes an object 613 representing the single-mode M2 is displayed on the display 124. The user can recognize that the voice recognition mode currently being set is the single-mode M2 from the object 613. Thus, the user can recognize that one of the voice commands shown in the command list area 612 or a voice command to start a continuous voice operation can be spoken (that is, the mobile PC 2 can accept such commands).

Furthermore, as shown in FIG. 14, when the user speaks a voice command to start a continuous voice operation and then the voice recognition mode transitions from the single-mode M2 to the multi-mode M3, a screen image 8-3 that includes an object 614 representing the multi-mode M3 is displayed on the display 124. The user can recognize that the voice recognition mode currently being set is the multi-mode M3 from the object 614. Thus, the user can recognize that one of the voice commands shown in the command list area 612 or a voice command to end a continuous voice operation can be spoken.

Note that the screen image 8-1 shown in FIG. 12 does not include an object representing the trigger mode M1. For example, when the user speaks a host operation command while the single-mode M2 is set as the voice recognition mode, and then the voice recognition mode transitions from the single-mode M2 to the trigger mode M1, the screen image 8-1 from which the object 613 representing the single-mode M2 is deleted is displayed. Alternatively, when the user speaks a voice command to end the continuous voice operation while the multi-mode M3 is set as the voice recognition mode, and then the voice recognition mode transitions from the multi-mode M3 to the trigger mode M1, the screen image 8-1 from which the object 614 representing the multi-mode M3 is deleted is displayed.

As described above, in the single-mode M2 and the multi-mode M3, the objects 613 and 614 representing these modes, respectively, are displayed. In contrast, no object is displayed in the trigger mode M1. Thus, when no object representing the voice recognition mode is displayed, the user can recognize that the voice recognition mode currently being set is the trigger mode M1.

Note that the screen image 8-1 may include an object representing the trigger mode M1. Furthermore, each of the screen images 8-1, 8-2, and 8-3 may further include a trigger command, a content (for example, words to be spoken) of a voice command to start a continuous voice operation, and a content of a voice command to end a continuous voice operation, for example.

The method to notify a user that the voice recognition mode currently being set is not limited to a method to display an object representing the voice recognition mode on the screen. Any method by which a user can recognize the voice recognition mode currently being set such as a method to play recorded voice announcement or beep sound representing the voice recognition mode is available.

With the above-described configuration, when a user speaks a trigger command, the mode control module 54 switches the voice recognition mode from the trigger mode M1 to the single-mode M2, and the notification control module 56 transmits mode information indicative of the single-mode M2 to the host application program 308C. The host application program 308C displays the object 613 representing the single-mode M2 on the screen of the display 124 of the wearable device 3 using the mode information.

Furthermore, when a user speaks a trigger command to start a continuous voice operation, the mode control module 54 switches the voice recognition mode from the single-mode M2 to the multi-mode M3, and the notification control module 56 sends mode information indicative of the multi-mode M3 to the host application program 308C. The host application program 308C displays the object 614 representing the multi-mode M3 on the screen of the display 124 of the wearable device 3 using the mode information.

Furthermore, when a user speaks a host operation command, or when a timeout of the single-mode M2 is detected, the mode control module 54 switches the voice recognition mode from the single-mode M2 to the trigger mode M1, and the notification control module 56 sends mode information indicative of the trigger mode M1 to the host application program 308C. The host application program 308C deletes the object 613 representing the single-mode M2 from the screen of the display 124 of the wearable device 3 using the mode information.

Additionally, when a user speaks a voice command to end a continuous voice operation, the mode control module 54 switches the voice recognition mode from the multi-mode M3 to the trigger mode M1, and the notification control module 56 sends mode information indicative of the trigger mode M1 to the host application program 308C. The host application program 308C deletes the object 614 representing the multi-mode M3 from the screen of the display 124 of the wearable device 3 using the mode information.

As specific examples, scenarios 1 and 2 where a user operates the host application program 308C, which has a function to generate a still image using the camera 11, with voice will be explained.

(Scenario 1)

When the voice recognition is started, a voice input is accepted in the trigger mode M1 set as the voice recognition mode. In response to “start voice operation” spoken by a user, the voice recognition mode transitions from the trigger mode M1 to the single-mode M2, and the object 613 representing the single-mode M2 is displayed on the screen.

Then, in response to “zoom in” spoken by the user, the host application program 308C executes a process to make the camera 116 zoom in, and the voice recognition mode returns to the trigger mode M1, and thus, the object 613 is deleted from the screen.

Then, in response to “start voice operation” spoken again by the user, the voice recognition mode again transitions from the trigger mode M1 to the single-mode M2, and the object 613 representing the single-mode M2 is displayed on the screen.

Then, in response to “press shutter release button” spoken by the user, the host application program 308C executes a process to generate a still image using the camera 116, and the voice recognition mode returns to the trigger mode M1, and thus, the object 613 is deleted from the screen.

The user can easily determine whether the voice recognition mode is the trigger mode M1 or the single-mode M2, based on presence or absence of the object 613 on the screen.

(Scenario 2)

When the voice recognition is started, a voice input is accepted in the trigger mode M1 set as the voice recognition mode. In response to “start voice operation” spoken by a user, the voice recognition mode transitions from the trigger mode M1 to the single-mode M2, and the object 613 representing the single-mode M2 is displayed on the screen.

Then, in response to “start continuous voice operation” spoken by the user, the voice recognition mode transitions from the single-mode M2 to the multi-mode M3, the object 613 representing the single-mode M2 is deleted from the screen, and the object 614 representing the multi-mode M3 is displayed on the screen.

Then, in response to “zoom in” spoken by the user, the host application program 308C executes a process to make the camera 116 zoom in, and in response to “press shutter release button” spoken by the user, the host application program 308C executes a process to generate a still image using the camera 116. During these processes, the object 614 representing the multi-mode M3 is kept on the screen.

Then, in response to “end continuous voice operation” spoken by the user, the voice recognition mode transitions from the multi-mode M3 to the trigger mode M1, and the object 614 is deleted from the screen.

The user can easily recognize which of the voice recognition mode is set from the trigger mode M1, the single-mode M2, and the multi-mode M3 by checking whether an object is displayed on the screen and the type of the object if displayed.

As can be understood from the above, from the notification based on the mode information (for example, displaying an object representing a voice recognition mode), a user can recognize the voice recognition mode currently being set and switching thereof, and thus, the user can easily grasp commands available in the voice recognition mode currently being set. Thus, the user will not be confused what command should be spoken during the voice operation, and the voice command operation can be performed with more convenience. In the above-described example, the host application program 308C uses the mode information to control the display of an object representing a voice recognition mode. However, the host application program 308C may control various operations (processes) which are not limited to the display of an object with the mode information.

With reference to flowcharts of FIGS. 15 to 18, an example of the procedure of a voice control process performed by the mobile PC 2 will be explained. The mobile PC 2 executing the voice control program 308B realizes the voice control process.

As shown in FIG. 15, firstly, the mobile PC 2 sets the trigger mode M1 as the voice recognition mode and sets the trigger mode dictionary data 581 as the dictionary to be used (step S101). Then, the mobile PC 2 sends mode information indicative of the trigger mode M1 to the host application program 308C (step S102).

Then, the mobile PC 2 executes a trigger mode recognition process which is a voice recognition process in the trigger mode M1 (step S103). In the trigger mode recognition process, for example, one of one or more trigger commands registered in the trigger mode dictionary data 581 is recognized from voice data that is input to the mobile PC 2 from the wearable device 3. The trigger mode recognition process ends in response to the recognition of one trigger command. The procedure of the trigger mode recognition process will be explained later with reference to FIG. 16.

When the trigger mode recognition process of step S103 ends, that is, when one trigger command has been recognized, the mobile PC 2 sets the single-mode M2 as the voice recognition mode and sets the single-mode dictionary data 582 as the dictionary to be used (step S104). The mobile PC 2 sends mode information indicative of the single-mode M2 to the host application program 308C (step S105).

Then, the mobile PC 2 executes a single-mode recognition process which is a voice recognition process in the single-mode M2 (step S106). In the single-mode recognition process, for example, one of the voice commands registered in the single-mode dictionary data 582 is recognized from voice data that is input to the mobile PC 2 from the wearable device 3. The single-mode recognition process ends in response to the recognition of one voice command in the single-mode M2. The procedure of the single-mode recognition process will be explained later with reference to FIG. 17.

When the single-mode recognition process of step S106 ends, the mobile PC 2 determines whether a voice command indicative of a start of a continuous voice operation is recognized in the single-mode recognition process (step S107). When a voice command indicative of a start of a continuous voice operation is not recognized (NO in step S107), the mobile PC 2 determines whether a timeout is detected in the single-mode recognition process (step S108).

When a timeout is not detected (NO in step S108), the mobile PC 2 sends information indicative of the voice command recognized in the single-mode recognition process to the host application program 308C (step S109). On the other hand, when a timeout is detected (YES in step S108), the process returns to step S101, and the voice recognition process in the trigger mode M1 is started again.

Furthermore, when a voice command indicative of a start of a continuous voice operation is recognized (YES in step S107), the mobile PC 2 sets the multi-mode M3 as the voice recognition mode and sets the multi-mode dictionary data 583 as the dictionary to be used (step S110). The mobile PC 2 sends mode information indicative of the multi-mode M3 to the host application program 308C (step S111).

Then, the mobile PC 2 executes a multi-mode recognition process which is a voice recognition process in the multi-mode M3 (step S112). In the multi-mode recognition process, one of the voice commands registered in the multi-mode dictionary data 583 is recognized from voice data that is input to the mobile PC 2 from the wearable device 3, for example. The multi-mode recognition process ends in response to the recognition of one voice command in the multi-mode M3. The procedure of the multi-mode recognition process will be explained later with reference to FIG. 18.

When the multi-mode recognition process of step S112 ends, that is, when one voice command in the multi-mode M3 has been recognized, the mobile PC 2 determines whether a voice command indicative of an end of a continuous voice operation is recognized in the multi-mode recognition process (step S113). When a voice command indicative of an end of a continuous voice operation is recognized (YES in step S113), the process returns to step S101, and the voice recognition process in the trigger mode M1 is started again.

When a voice command indicative of an end of a continuous voice operation is not recognized (NO in step S113), the mobile PC 2 sends information indicative of the voice command recognized in the multi-mode recognition process to the host application program 308C (step S114), and the process returns to step S112. Thus, the multi-mode recognition process is repeated until a voice command indicative of an end of a continuous voice operation is recognized.

As described above, in accordance with commands spoken by a user, switching of the voice recognition mode is controlled, and mode information and command information are sent to the host application program 308C currently being executed. Thus, the mobile PC 2 can command the host application program 308C to operate based on the mode information and the command information. Furthermore, in each of the modes M1, M2, and M3, a dictionary including only the commands to be recognized in the corresponding voice recognition mode is used. Thus, a time required to the voice recognition process can be shortened, and the result of recognition can be more accurate as compared to a case where a single dictionary including all the commands to be recognized in the modes M1, M2, and M3 is used.

FIG. 16 shows a flowchart of an example of the procedure of a trigger mode recognition process executed by the mobile PC 2. The trigger mode recognition process corresponds to step S103 of the voice control process mentioned above with reference to FIG. 15.

Firstly, the mobile PC 2 determines whether voice data has been received (step S21). The mobile PC 2 receives voice data transmitted from the wearable device 3 via the cable 146 or the like, for example. When voice data has not been received (NO in step S21), the process returns to step S21, and whether voice data has been received is determined again.

When voice data has been received (YES in step S21), the mobile PC 2 performs a process to recognize a trigger command indicated in the trigger mode dictionary data 581 from the received voice data (step S22). In this process, for example, features are calculated from the voice data, and when the features include a feature corresponding to a trigger command in the trigger mode dictionary data 581, the mobile PC 2 determines that the trigger command is recognized from the voice data.

The mobile PC 2 determines whether a trigger command is recognized from the voice data (step S23). When a trigger command is not recognized from the voice data (NO in step S23), the process returns to step S21, and a process to recognize a trigger command from newly received voice data is continued.

On the other hand, when a trigger command is recognized from the voice data (YES in step S23), the mobile PC 2 returns a recognition result indicative of the recognized trigger command (step S24), and the process ends. The recognition result may be used in the voice control process of FIG. 15. Note that, in the voice control process, if information indicative of which one of the trigger commands that are indicated in the trigger mode dictionary data 581 is recognized is not necessary, step S24 may be omitted.

Through the above process, a trigger command can be recognized from voice data.

FIG. 17 shows a flowchart of an example of the procedure of a single-mode recognition process executed by the mobile PC 2. The single-mode recognition process corresponds to step S106 of the voice control process mentioned above with reference to FIG. 15.

Firstly, the mobile PC 2 starts a timer 53 (step S31). A time to detect a timeout of the single-mode M2 is set to the timer 53.

Then, the mobile PC 2 determines whether voice data has been received (step S32). When voice data has been received (YES in step S32), the mobile PC 2 performs a process to recognize a voice command indicated in the single-mode dictionary data 582 from the received voice data (step S33). In this process, for example, features are calculated from the voice data, and when the features include a feature corresponding to a voice command in the single-mode dictionary data 582, the mobile PC 2 determines that the voice command is recognized from the voice data.

The mobile PC 2 determines whether a voice command is recognized from the voice data (step S34). When a voice command is recognized from the voice data (YES in step S34), the mobile PC 2 returns a recognition result indicative of the recognized voice command (step S35), and the process ends. The recognition result indicates one of voice commands included in the single-mode dictionary data 582 and is used in the voice control process of FIG. 15.

On the other hand, when a voice command is not recognized from the voice data (NO in step S34), or when voice data has not been received (NO in step S32), the mobile PC 2 determines whether a timeout is detected with the timer 53 (step S36). When a timeout is not detected (NO in step S36), the process returns to step S32, and a process to recognize a voice command from newly received voice data is continued.

When a timeout is detected (YES in step S36), the mobile PC 2 returns information indicative of the timeout (step S37), and the process ends. The information indicative of the timeout is used in the voice control process of FIG. 15.

Through the above process, a voice command in the single-mode M2 can be recognized from voice data or a timeout in the single-mode M2 can be detected.

FIG. 18 shows a flowchart of an example of the procedure of a multi-mode recognition process executed by the mobile PC 2. The multi-mode recognition process corresponds to step S112 of the voice control process explained above with reference to FIG. 15.

Firstly, the mobile PC 2 determines whether voice data has been received (step S41). When voice data has not been received (NO in step S41), the process returns to step S41, and whether voice data has been received is determined again.

When voice data has been received (YES in step S41), the mobile PC 2 performs a process to recognize a voice command indicated in the multi-mode dictionary data 583 from the received voice data (step S42). In this process, for example, features are calculated from the voice data, and when the features include a feature corresponding to a voice command in the multi-mode dictionary data 583, the mobile PC 2 determines that the voice command is recognized from the voice data.

The mobile PC 2 determines whether a voice command is recognized from the voice data (step S43). When a voice command is not recognized from the voice data (NO in step S43), the process returns to step S41, and a process to recognize a voice command from newly received voice data is continued.

On the other hand, when a voice command is recognized from the voice data (YES in step S43), the mobile PC 2 returns a recognition result indicative of the recognized voice command (step S44), and the process ends. The recognition result indicates one of voice commands included in the multi-mode dictionary data 583 and is used in the voice control process of FIG. 15.

Through the above process, a voice command in the multi-mode M3 can be recognized from voice data.

Now, a flowchart of FIG. 19 illustrates an example of the procedure of a host control process executed by the mobile PC 2. The mobile PC 2 executing the host application program 308C realizes the host control process.

Firstly, the mobile PC 2 determines whether mode information indicative of a voice recognition mode currently being set has been received (step S501). The mode information is information sent in the above-described voice control process with reference to FIG. 15. When mode information has been received (YES in step S501), the mobile PC 2 branches the process in accordance with the type of mode indicated in the mode information (step S502).

When the mode information indicates the trigger mode M1 (trigger mode in step S502), the mobile PC 2 deletes the object 613 representing the single-mode M2 or the object 614 representing the multi-mode M3 from the screen of the display 124 of the wearable device 3 (step S503). When the mode information indicates the single-mode M2 (single-mode in step S502), the mobile PC 2 displays the object 613 representing the single-mode M2 on the screen of the display 124 (step S504). Furthermore, when the mode information indicates the multi-mode M3 (multi-mode in step S502), the mobile PC 2 displays the object 614 representing the multi-mode M3 on the screen of the display 124 (step S505).

When the mode information has not been received (NO in step S501), the mobile PC 2 determines whether command information indicative of a recognized voice command (that is, a host operation command) has been received (step S506). The command information is information sent in the voice control process as described above with reference to FIG. 15. When the command information has not been received (NO in step S506), the process returns to step S501 and whether mode information has been received is determined again.

When the command information has been received (YES in step S506), the mobile PC 2 branches the process in accordance with the type of command indicated in the command information (step S507). When the command information indicates the command 1 (“press shutter release button”) (command 1 in step S507), the mobile PC 2 generates a still image by capturing using the camera 116 (step S508). When the command information indicates the command 2 (“zoom in”) (command 2 in step S507), the mobile PC 2 makes the camera 116 zoom in (step S509). Furthermore, when the command information indicates the command 3 (“zoom out”) (command 3 in step S507), the mobile PC 2 makes the camera 116 zoom out (step S510).

As can be understood from the above, the mobile PC 2 can control the operation of the host application program 308C in accordance with the mode information or the command information. That is, based on the mode information, the display of an object representing a voice recognition mode on a screen image of the host application program 308C can be controlled. Furthermore, based on the command information, the operation related to image capture of the host application program 308C using the camera 116 can be controlled.

Second Embodiment

In the first embodiment, the voice recognition mode transitions from the trigger mode M1 to the single-mode M2 when a trigger command is recognized. In contrast, in the second embodiment, the voice recognition mode transitions from the trigger mode M1 to the single-mode M2 or the multi-mode M3 when a trigger command is recognized.

The configuration of the mobile PC 2 and the wearable device 3 of the second embodiment are the same as the mobile PC 2 and the wearable device 3 of the first embodiment, and the procedures of processes executed by the mode control module 54 and the voice recognition module 52 are different between the first and second embodiments. In the following description, only the points different from the first embodiment are explained.

FIG. 20 shows an example of controlling a transition of the voice recognition mode by the mode control module 54 of the second embodiment. In the initial state, the trigger mode M1 is set as the voice recognition mode, for example. The mode control module 54 switches the voice recognition mode in accordance with a type of a command recognized from voice data in the following manner.

(B1) The mode control module 54 switches from the trigger mode M1 currently set as the voice recognition mode to the single-mode M2 in response to recognition of a trigger command indicative of a start of a voice operation.

(B2) The mode control module 54 switches from the single-mode M2 currently set as the voice recognition mode to the trigger mode M1 in response to recognition of a voice command to operate the host application program 508C (that is, a host operation command), or in response to a timeout.

(B3) The mode control module 54 switches from the trigger mode M1 currently set as the voice recognition mode to the multi-mode M3 in response to recognition of a trigger command indicative of a start of a continuous voice operation.

(B4) The mode control module 54 switches from the multi-mode M3 currently set as the voice recognition mode to the trigger mode M1 in response to recognition of a voice command indicative of an end of the continuous voice operation.

(B5) The mode control module 54 keeps the multi-mode M3 currently set as the voice recognition mode while a voice command that is different from a voice command indicative of an end of the continuous voice operation is recognized. The voice command that is different from a voice command indicative of an end of the continuous voice operation is a voice command to operate the host application program 308C (that is, a host operation command).

Configuration examples of the trigger mode dictionary data 581, the single-mode dictionary data 582, and the multi-mode dictionary data 583 used in the mobile PC 2 of the second embodiment will be explained with reference to FIGS. 21 to 23.

FIG. 21 shows a configuration example of the trigger mode dictionary data 581. The example of FIG. 21 shows two records including:

-   -   a record 5-1 that includes “trigger command 1” set to the         trigger command ID field and “start voice operation” set to the         content field; and     -   a record 5-2 that includes “trigger command 2” set to the         trigger command ID field and “start continuous voice operation”         set to the content field.

The trigger command 1 indicated in the record 5-1 is used to start the single-mode M2 in which a process to recognize one of voice commands from voice data is performed. Furthermore, the trigger command 2 indicated in the record 5-2 is used to start the multi-mode M3 in which a process to recognize one of voice commands from voice data is performed repeatedly. Thus, the trigger commands 1 and 2 function as mode change commands to change the voice recognition mode.

FIG. 22 shows a configuration example of the single-mode dictionary data 582. The example of FIG. 22 shows three records including:

-   -   a record 6-1 that includes “command 1” set to the command ID         field and “press shutter release button” set to the content         field;     -   a record 6-2 that includes “command 2” set to the command ID         field and “zoom in” set to the content field; and     -   a record 6-3 that includes “command 3” set to the command ID         field and “zoom out” set to the content field.

The command 1 indicated in the record 6-1 is used to command the host application program 308C to execute a process to generate a still image with the camera 116. The command 2 indicated in the record 6-2 is used to command the host application program 308C to execute a process to make the camera 116 zoom in. The command 3 indicated in the record 6-3 is used to command the host application program 308C to execute a process to make the camera 116 zoom out. That is, the commands 1, 2, and 3 indicated in the records 6-1, 6-2, and 6-3 are host operation commands used for the operation of the host application program 308C.

The single-mode dictionary data 582 does not include a mode change command. Thus, when one of the voice commands indicated in the single-mode dictionary data 582 is recognized, the notification control module 56 sends information indicative of the recognized voice command to the host application program 308C.

FIG. 23 shows a configuration example of the multi-mode dictionary data 583. The example of FIG. 23 shows four records including:

-   -   a record 7-1 that includes “command 1” set to the command ID         field and “press shutter release button” set to the content         field;     -   a record 7-2 that includes “command 2” set to the command ID         field and “zoom in” set to the content field;     -   a record 7-3 that includes “command 3” set to the command ID         field and “zoom out” set to the content field; and     -   a record 7-4 that includes “command 4” set to the command ID         field and “end continuous voice operation” set to the content         field.

The commands 1, 2, and 3 indicated in the records 7-1, 7-2, and 7-3 are the same as the commands 1, 2, and 3 indicated in the records 6-1, 6-2, and 6-3 of the single-mode dictionary data 582 explained above with reference to FIG. 22, respectively. Thus, the commands 1, 2, and 3 indicated in the records 7-1, 7-2, and 7-3 are host operation commands. The command 4 indicated in the record 7-4 is a mode change command used to end the multi-mode M3 in which a process to recognize one of the voice commands from voice data is performed repeatedly. Note that each record may further include a type field that indicates whether the corresponding command is either a host operation command or a mode change command.

With the configuration explained above, when a user speaks “start voice operation” which is a trigger command, the mode control module 54 switches the voice recognition mode from the trigger mode M1 to the single-mode M2, and the notification control module 56 sends mode information indicative of the single-mode M2 to the host application program 308C. The host application program 308C uses the mode information to display the object 613 representing the single-mode M2 on the screen of the display 124.

Furthermore, when the user speaks a host operation command, or when a timeout of the single-mode M2 is detected, the mode control module 54 switches the voice recognition mode from the single-mode M2 to the trigger mode M1, and the notification control module 56 sends mode information indicative of the trigger mode M1 to the host application program 308C. The host application program 308C uses the mode information to delete the object 613 representing the single-mode M2 displayed on the screen of the display 124 of the wearable device 3.

Furthermore, when the user speaks “start continuous voice operation” which is a trigger command, the mode control module 54 switches the voice recognition mode from the trigger mode M1 to the multi-mode M3, and the notification control module 56 sends mode information indicative of the multi-mode M3 to the host application program 308C. The host application program 308C uses the mode information to display the object 614 representing the multi-mode M3 on the screen of the display 124 of the wearable device 3.

Furthermore, when the user speaks a voice command indicative of an end of a continuous voice operation, the mode control module 54 switches the voice recognition mode from the multi-mode M3 to the trigger mode M1, and the notification control module 56 sends mode information indicative of the trigger mode M1 to the host application program 308C. The host application program 308C uses the mode information to delete the object 614 representing the multi-mode M3 displayed on the screen of the display 124 of the wearable device 3.

As specific examples, scenarios 3 and 4 where a user operates the host application program 308C having a function to generate a still image using the camera 116 with voice will be explained.

(Scenario 3)

When the voice recognition is started, a voice input is accepted in the trigger mode M1 set as the voice recognition mode. In response to “start voice operation” spoken by a user, the voice recognition mode transitions from the trigger mode M1 to the single-mode M2, and the object 613 representing the single-mode M2 is displayed on the screen.

Then, in response to “zoom in” spoken by the user, the host application program 308C executes a process to make the camera 116 zoom in, and the voice recognition mode returns to the trigger mode M1, and thus, the object 613 is deleted from the screen.

Then, in response to “start voice operation” spoken again by the user, the voice recognition mode again transitions from the trigger mode M1 to the single-mode M2, and the object 613 representing the single-mode M2 is displayed on the screen.

Then, in response to “press shutter release button” spoken by the user, the host application program 308C executes a process to generate a still image using the camera 116, and the voice recognition mode returns to the trigger mode M1, and the object 613 is deleted from the screen.

The user can easily recognize whether the voice recognition mode is the trigger mode M1 or the single-mode M2, based on presence or absence of the object 613 on the screen.

(Scenario 4)

When the voice recognition is started, a voice input is accepted in the trigger mode M1 set as the voice recognition mode. In response to “start continuous voice operation” spoken by a user, the voice recognition mode transitions from the trigger mode M1 to the multi-mode M3, and the object 614 representing the multi-mode M3 is displayed on the screen.

Then, in response to “zoom in” spoken by the user, the host application program 308C executes a process to make the camera 116 zoom in, and in response to “press shutter release button” spoken by the user, the host application program 308C executes a process to generate a still image by capturing using the camera 116. During these processes, the object 614 representing the multi-mode M3 is kept on the screen.

Then, in response to “end continuous voice operation” spoken by the user, the voice recognition mode transitions from the multi-mode M3 to the trigger mode M1, and the object 614 is deleted from the screen.

The user can easily recognize whether the voice recognition mode is the trigger mode M1 or the multi-mode M3, based on presence or absence of the object 614 on the screen.

As can be understood from the above, the user can easily recognize the voice recognition mode currently being set, and thus, the user can perform the voice command operation conveniently.

With reference to a flowchart of FIG. 24, an example of the procedure of a voice control process performed by the mobile PC 2 of the second embodiment will be explained.

Firstly, the mobile PC 2 sets the trigger mode M1 as the voice recognition mode and sets the trigger mode dictionary data 581 as the dictionary to be used (step S601). The mobile PC 2 sends the mode information indicative of the trigger mode M1 to the host application program 308C (step S602).

Then, the mobile PC 2 executes a trigger mode recognition process which is a voice recognition process in the trigger mode M1 (step S603). In the trigger mode recognition process, for example, one of one or more trigger commands registered in the trigger mode dictionary data 581 is recognized from voice data that is input to the mobile PC 2 from the wearable device 3. The trigger mode recognition process ends in response to the recognition of one trigger command. The procedure of the trigger mode recognition process has been explained above with reference to the flowchart of FIG. 16.

When the trigger mode recognition process of step S603 ends, that is, when one trigger command has been recognized, the mobile PC 2 branches the process in accordance with the recognized trigger command (step S604). When the recognized trigger command is a trigger command indicative of a start of a voice operation (start voice operation in step S604), the mobile PC 2 sets the single-mode M2 as the voice recognition mode, and sets the single-mode dictionary data 582 as the dictionary to be used (step S605). The mobile PC 2 sends mode information indicative of the single-mode M2 to the host application program 308C (step S606).

Then, the mobile PC 2 executes a single-mode recognition process which is a voice recognition process in the single-mode M2 (step S607). In the single-mode recognition process, for example, one of the voice commands registered in the single-mode dictionary data 582 is recognized from voice data that is input to the mobile PC 2 from the wearable device 3. The procedure of the single-mode recognition process has been explained above with reference to the flowchart of FIG. 17.

When the single-mode recognition process of step S607 ends, the mobile PC 2 determines whether a timeout is detected in the single-mode recognition process (step S608). When a timeout is not detected (NO in step S608), the mobile PC 2 sends information indicative of a voice command recognized in the single-mode recognition process to the host application program 308C (step S609). On the other hand, when a timeout is detected (YES in step S608), the process returns to step S601 and the voice recognition process in the trigger mode M1 is started again.

Furthermore, when the recognized trigger command is a voice command indicative of a start of a continuous voice operation (start continuous voice operation in step S604), the mobile PC 2 sets the multi-mode M3 as the voice recognition mode and sets the multi-mode dictionary data 583 as the dictionary to be used (step S610). The mobile PC 2 sends mode information indicative of the multi-mode M3 to the host application program 308C (step S611).

Then, the mobile PC 2 executes a multi-mode recognition process which is a voice recognition process in the multi-mode M3 (step S612). In the multi-mode recognition process, for example, one of voice commands registered in the multi-mode dictionary data 583 is recognized from voice data that is input to the mobile PC 2 from the wearable device 3. The multi-mode recognition process ends in response to the recognition of one voice command in the multi-mode M3. The procedure of the multi-mode recognition process has been explained above with reference to the flowchart of FIG. 18.

When the multi-mode recognition process of step S612 ends, that is, when one voice command in the multi-mode M3 has been recognized, the mobile PC 2 determines whether a voice command indicative of an end of a continuous voice operation is recognized in the multi-mode recognition process (step S613). When a voice command indicative of an end of a continuous voice operation is recognized (YES in step S613), the process returns to step S601, and the voice recognition process in the trigger mode M1 is started again.

When a voice command indicative of an end of a continuous voice operation is not recognized (NO in step S613), the mobile PC 2 sends information indicative of the voice command recognized in the multi-mode recognition process to the host application program 308C (step S614), and the process returns to step S612. Thus, the multi-mode recognition process is repeated until a voice command indicative of an end of a continuous voice operation is recognized.

As described above, in accordance with the commands based on the speech by the user, switching of the voice recognition mode is controlled, and the mode information and the command information are sent to the host application program 308C currently being executed. Thus, the mobile PC 2 can operate the host application program 308C based on the mode information and the command information. Furthermore, in each of the modes M1, M2, and M3, a dictionary including only the commands to be recognized in the corresponding mode is used. Thus, a time required to the voice recognition process can be shortened, and the result of recognition can be more accurate as compared to a case where a single dictionary including all the commands to be recognized in the modes M1, M2, and M3 is used.

Third Embodiment

In the first and second embodiments, mode information and command information are sent to one host application program 308C. In contrast, in a third embodiment, mode information and command information are sent to multiple host application programs 308C.

The configurations of the mobile PC 2 and the wearable device 3 of the third embodiment are the same as those of the first and second embodiments, and the procedure of a process executed by the notification control module 56 is different between the third embodiment and the first and second embodiments. In the following description, only the points different from the first and second embodiments are explained.

As shown in FIG. 25, the notification control module 56 may send mode information and command information to each of host application programs 308C-1, . . . , and 3080-N. The notification control module 56 establishes a connection for inter-process communication with each of the host application programs 308C-1, . . . , and 3080-N, and sends the mode information and the command information to each of the host application programs 308C-1, . . . , and 3080-N. The host application programs 308C-1, . . . , and 3080-N include control modules 59-1, . . . , and 59-N, respectively. The control modules 59-1, . . . , and 59-N respectively control the operation of the host application programs 308C-1, . . . , and 3080-N using the mode information and the command information.

In that case, for example, the control module 59-1 of one host application program 308C-1, which can be currently operated by a user, displays an object representing the voice recognition mode currently being set on the screen of the display 124 using the mode information. Then, when the other application program 308-N becomes operable by the user, the control module 59-N of the host application program 308-N may display an object representing the voice recognition mode currently being set on the screen of the display 124 using the mode information.

As described above, the mobile PC 2 uses the mode information and the command information to control the operation of the host application programs 308C-1, . . . , and 3080-N respectively. Thus, in accordance with the voice command operation by the user, the host application programs 308C-1, . . . , and 3080-N can be controlled in parallel, and thus, the voice command operation can be performed more conveniently.

Fourth Embodiment

In the first to third embodiments, both the mode information and the command information are sent to one or more host application programs 308C. In contrast, in a fourth embodiment, the mode information is sent to a first host application program 308C and the command information is sent to a second host application program 308C.

The configurations of the mobile PC 2 and the wearable device 3 of the fourth embodiment are the same as those of the first to third embodiments, and the procedure of a process executed by the notification control module 56 is different between the fourth embodiment and the first to third embodiments. In the following description, only the points different from the first to third embodiments are explained.

As shown in FIG. 26, the notification control module 56 sends mode information to one of host application programs 308C-1 and 308C-2, and sends command information to the other. The notification control module 56 establishes connections for inter-process communication with the host application programs 308C-1 and 308C-2, respectively, sends mode information alone to the first host application program 308C-1, and sends command, information alone to the second host application program 308C-2. The control module 59-1 of the first host application program 3080-1 controls the operation of the first host application program 308C-1 using the mode information. The control module 59-2 of the second host application program 308C-2 controls the operation of the second host application program 308C-2 using the command information.

The control module 59-1 of the first host application program 308C-1 may control the operation of the second host application program 308C-2 using the mode information. For example, the control module 59-1 uses the mode information to request the second host application program 308C-2 to display an object representing the voice recognition mode currently being set on the screen of the display 124. In response to the request, the control module 59-2 of the second host application program 308C-2 displays the object representing the voice recognition mode currently being set on the screen of the display 124.

As described above, the mode information and the command information may be sent separately to two host application programs 3080-1 and 308C-2 that operate in cooperation. Note that the control module 59-2 of the second host application program 308C-2 may control the operation of the first host application program 3080-1 using the command information.

As described above, the mobile PC 2 uses the mode information and the command information to control the operation of the host application programs 308C-1 and 308C-2 functioning in cooperation. Thus, in accordance with the voice command operation by the user, the host application programs 308C-1 and 308C-2 can be controlled in parallel, and thus, the voice command operation can be performed more conveniently.

As explained above, in the first to fourth embodiments, the voice command operation can be performed more conveniently. A connectors of USB Type-C receptacle 207, Bluetooth/wireless LAN device, or the like establishes a wired connection or a wireless connection between the mobile PC 2 and the wearable device 3 wearable by a user. The voice reception module 51 receives voice data generated by collecting speech of the user from the wearable device 3. When a first mode is set as a voice recognition mode, the notification control module 56 sends information indicative of the first mode to one or more host application programs 308C being executed on the mobile PC 2. In the first mode, a first recognition process to recognize one of first commands from the voice data is performed. When a second mode is set as the voice recognition mode, the notification control module 56 sends information indicative of the second mode to the one or more host application programs 308C. In the second mode, a second recognition process to recognize one of second commands from the voice data is performed repeatedly.

The host application programs 308C may be operated using the mode information. For example, when the sent mode information is used to notify the user of each mode indicated in the mode information, the user can grasp the voice recognition mode currently being set, and thus, the voice command operation can be performed more conveniently.

Each of various functions described in the first to fourth embodiments may be realized by a circuit (e.g., processing circuit). An exemplary processing circuit may be a programmed processor such as a central processing unit (CPU). The processor executes computer programs (instructions) stored in a memory thereby perform the described functions. The processor may be a microprocessor including an electric circuit. An exemplary processing circuit may be a digital signal processor (DSP), an application specific integrated circuit (ASIC), a microcontroller, a controller, or other electric circuit components. The components other than the CPU described according to the first to fourth embodiments may be realized in a processing circuit.

Furthermore, various processes of the first to fourth embodiments can be realized by executing a computer programs. Thus, the same advantages obtained by the first to fourth embodiments can be achieved by installing the computer program into a computer via a computer readable storage medium storing the computer program.

While certain embodiments have been described, these embodiments have been presented by way of example only, and are not intended to limit the scope of the inventions. Indeed, the novel embodiments described herein may be embodied in a variety of other forms; furthermore, various omissions, substitutions and changes in the form of the embodiments described herein may be made without departing from the spirit of the inventions. The accompanying claims and their equivalents are intended to cover such forms or modifications as would fall within the scope and spirit of the inventions. 

What is claimed is:
 1. An electronic device comprising: a transceiver that establishes a wired connection or a wireless connection between the electronic device and a wearable device wearable by a user; and a hardware processor that receives voice data acquired by collecting speech of the user from the wearable device, sends first mode information indicative of a first mode to one or more application programs being executed on the electronic device when the first mode is set as a voice recognition mode, wherein a first recognition process to recognize one of first commands from the voice data is performed in the first mode, and sends second mode information indicative of a second mode to the one or more application programs when the second mode is set as the voice recognition mode, wherein a second recognition process to recognize one of second commands from the voice data is repeatedly performed in the second mode.
 2. The electronic device of claim 1, wherein the hardware processor notifies the user that the voice recognition mode is the first mode using the first mode information when the first mode is set as the voice recognition mode, and notifies the user that the voice recognition mode is the second mode using the second mode information when the second mode is set as the voice recognition mode.
 3. The electronic device of claim 2, wherein the hardware processor displays a first object representing the first mode on a screen of a display of the wearable device when the first mode is set as the voice recognition mode, and displays a second object representing the second mode on the screen when the second mode is set as the voice recognition mode.
 4. The electronic device of claim 1, wherein the hardware processor sends information indicative of a first command recognized in the first recognition process to the one or more application programs when the first mode is set as the voice recognition mode, and sends information indicative of a second command recognized in the second recognition process to the one or more application programs when the second mode is set as the voice recognition mode.
 5. The electronic device of claim 1, wherein, when the first mode is set as the voice recognition mode, the hardware processor sends the first mode information to a first application program being executed on the electronic device and sends information indicative of a first command recognized in the first recognition process to a second application program being executed on the electronic device, and when the second mode is set as the voice recognition mode, the hardware processor sends the second mode information to the first application program and sends information indicative of a second command recognized in the second recognition process to the second application program.
 6. The electronic device of claim 1, wherein the hardware processor sends third mode information indicative of a third mode to the one or more application programs when the third mode is set as the voice recognition mode, and one of one or more third commands is recognized from the voice data in the third mode.
 7. The electronic device of claim 6, wherein the hardware processor notifies the user that the voice recognition mode is the first mode using the first mode information when the first mode is set as the voice recognition mode, notifies the user that the voice recognition mode is the second mode using the second mode information when the second mode is set as the voice recognition mode, and notifies the user that the voice recognition mode is the third mode using the third mode information when the third mode is set as the voice recognition mode.
 8. The electronic device of claim 7, wherein the hardware processor displays a first object representing the first mode on a screen of a display of the wearable device when the first mode is set as the voice recognition mode, displays a second object representing the second mode on the screen when the second mode is set as the voice recognition mode, deletes the first object from the screen when the voice recognition mode is switched from the first mode to the third mode, and deletes the second object from the screen when the voice recognition mode is switched from the second mode to the third mode.
 9. The electronic device of claim 7, wherein the hardware processor displays a first object representing the first mode on a screen of a display of the wearable device when the first mode is set as the voice recognition mode, displays a second object representing the second mode on the screen when the second mode is set as the voice recognition mode, and displays a third object representing the third mode on the screen when the third mode is set as the voice recognition mode.
 10. The electronic device of claim 7, wherein, when the first mode is set as the voice recognition mode, the hardware processor sends the first mode information to a first application program being executed on the electronic device and sends information indicative of a first command recognized in the first recognition process to a second application program being executed on the electronic device, when the second mode is set as the voice recognition mode, the hardware processor sends the second mode information to the first application program and sends information indicative of a second command recognized in the second recognition process to the second application program, and when the third mode is set as the voice recognition mode, the hardware processor sends the third mode information to the first application program.
 11. The electronic device of claim 6, wherein, when the third mode is set as an initial state of the voice recognition mode, the hardware processor switches the voice recognition mode from the third mode to the first mode or the second mode, based on a third command recognized from the voice data in the third mode.
 12. The electronic device of claim 11, wherein the hardware processor switches the voice recognition mode from the third mode to the first mode when the third command is recognized from the voice data, switches the voice recognition mode from the first mode to the second mode when a fourth command included in the first commands is recognized from the voice data, the fourth command indicating a start of a continuous voice operation, switches the voice recognition mode from the first mode to the third mode when a sixth command included in the first commands is recognized from the voice data, the sixth command being different from the fourth command, switches the voice recognition mode from the second mode to the third mode when a fifth command included in the second commands is recognized from the voice data, the fifth command indicating an end of the continuous voice operation, and keeps the second mode as the voice recognition mode when a seventh command included in the second commands is recognized from the voice data, the seventh command being different from the fifth command.
 13. The electronic device of claim 11, wherein the hardware processor switches the voice recognition mode from the third mode to the first mode when an eighth command included in the third commands is recognized from the voice data, the eighth command indicating a start of a voice operation, switches the voice recognition mode from the first mode to the third mode when one of the first commands is recognized from the voice data, switches the voice recognition mode from the third mode to the second mode when a fourth command included in the third commands is recognized from the voice data, the fourth command indicating a start of a continuous voice operation, switches the voice recognition mode from the second mode to the third mode when a fifth command included in the second commands is recognized from the voice data, the fifth command indicating an end of the continuous voice operation, and keeps the second mode as the voice recognition mode when a seventh command included in the second commands is recognized from the voice data, the seventh command being different from the fifth command.
 14. The electronic device of claim 11, wherein the third commands comprise a trigger command indicative of a start of a voice operation as the first mode and a trigger command indicative of a start of a continuous voice operation as the second mode.
 15. The electronic device of claim 1, wherein the electronic device is a portable wireless device.
 16. A control method of an electronic device, the control method comprising: establishing a wired connection or a wireless connection between the electronic device and a wearable device wearable by a user; receiving voice data acquired by collecting speech of the user from the wearable device; sending first mode information indicative of a first mode to one or more application programs being executed on the electronic device when the first mode is set as a voice recognition mode, wherein a first recognition process to recognize one of first commands from the voice data is performed in the first mode; and sending second mode information indicative of a second mode to the one or more application programs when the second mode is set as the voice recognition mode, wherein a second recognition process to recognize one of second commands from the voice data is repeatedly performed in the second mode. 